Optical and other high-speed communication channels suffer from dispersion which changes the shape of pulses which encode symbols being transmitted. Dispersion and pulse shape changes arise from the fact that different frequency components propagate at different velocities. This phenomenon causes Inter-Symbol Interference (ISI) between neighboring pulses, and ISI limits the number of discrete amplitude levels for symbol pulses which can be successfully detected. Equalization is a way of eliminating or reducing ISI.
If the exact characteristics of the channel are known, ISI can be eliminated or reduced substantially by using a pair of filters, one at the transmitter which does pre-channel equalization, and one at the receiver does post-channel equalization, so as to control the pulse shape distortion. If the filter characteristics of these filters are set correctly, the transmit filter pre-distorts the pulse shapes so that the distortions in the channel do not cause ISI at the sample instants and the receive filter takes care of any remaining ISI noise before each received symbol is fed to the slicer for decision.
However, the characteristics of the channel are rarely known in advance, and are time-varying. In addition, there is always imprecision that arises in implementation of the filters. Therefore, there is always some distortion such that ISI will limit the data rate of the system. To compensate for this residual distortion, equalization is performed, using an equalizer (a type of filter).
In general, equalization at the receiver side is much more popular than pre-equalization at the transmitter side, because it saves the need to inform the transmitter of the exact channel conditions.
Equalizers are adaptive usually to adjust to time varying conditions for ISI reduction. Adaptive Finite Impulse Response (FIR) equalizers are digital tapped delay line filters with impulse responses defined by the tap weights, called the filter coefficients.
The adaptive equalization process involves setting tap weights, decoding data symbols and/or receiving training data and processing it to determine whether slicer errors are occurring or will occur in reception of the data, then altering the tap weights and, sometimes, processing the training data again to determine if the number of errors was reduced. The process of adapting the tap weights to change the filter characteristics continues, until the number of errors at the receiver side is minimized (a convergence state). Typically, adaptation is achieved by observing the error between the desired pulse shape and the actual pulse shape at the output of the equalizer filter, measured at the sampling instants, and then using this error to determine the direction in which the tap weights should be altered to approach an optimum set of values.
Equalizer Initialization
There are two main methods for initializing and updating Feed Forward Equalization (FFE) coefficients. The first method is to use an adaptive filter algorithm. This algorithm changes the equalizer weights directly to move towards a minimum point of error criteria, without estimating the channel coefficients. However, adaptive filter algorithms require a large amount of continues samples to converge and they are not suitable to work with training symbols which are available only in short bursts. They suffer from tracking noise and they are very sensitive to step size selection. They are usually easy to implement in hardware. Since these algorithms work in a close loop, the coefficients may diverge under some conditions.
The second method uses analytic computation, based on channel estimation. This method requires solving the equations that lead to the FFE coefficients and is preferred mainly because it provides better performance and its effect on system performance are easier to determine. However, analytic computation requires complicated software and hardware and is problematic regarding the update or tracking speed, since the data rate in an optical communication channel is very high.
In addition, the CPU estimated update time is about 1 mSec, during which the FFE coefficients remain fixed and therefore, do not compensate any changes in the channel which take place during this time period. This slow update time and further latency effects raise the need to provide a hardware-based algorithm that replaces software computation, while separating the parameter estimation task from the FFE coefficients computation task. Therefore, the task of solving the equations and obtaining the FFE coefficients is more suitable for software implementation.
The Concept of a Feed Forward Equalizer
The FFE main purpose is to reshape or shorten the channel so that it will be most suitable for processing by the MLSE at the receiver side. It does that by minimizing the power of all the noise sources (at FFE output) which are not covered directly by the MLSE, such as Residual ISI and enhanced noise (i.e., the variance of the noise at the FFE output).
It is assumed that the model of a typical channel includes a fading channel (a channel with deviation of the attenuation) with an impulse response h taken from the channel estimation mechanism, and additive noise W, with a correlation function given by:Rww[l]=E(W[n]W[n−l]),l=−cl:cl,  [Eq. 1]where cl is the assumed noise correlation length
After applying the FFE to the channel h, a new effective channel g[n] is obtained, and can be described by:g[n]=Σk=0L−1h[l]f[n−l]  [Eq. 2]where L—is the assumed length of the channel impulse response and f[ ] are the coefficients of the FFE.
A cursor position and a window of Nisi taps are defined.
Where Nisi is the number of post cursor taps allowed after the FFE operation.
The window and cursor taps are left for the MLSE processing. The cursor tap (the tap that multiplies the data symbols that are to be decoded. The other taps multiply symbols regarded as ISO is expected to be ˜1.
All the taps outside the window and cursor taps which are difference from 1 are considered to be residual ISI, which is given by:ResISI=Σl=1Cursor−1|g[l]|2Σl=Cursor+NisiL+F−1|g[l]|2+|g[cursor]−1|2[Eq. 3]The following channel is defined:gWin=g  [Eq. 4]gWin[cursor]=g[cursor]−1  [Eq. 5]gWin[cursor+1: cursor+Nisi]=0  [Eq. 6]
The expression for the residual ISI may be expressed by:ResISI=Σl=1L+F−1gWin[l]|2  [Eq. 7]where F is the number of FFE coefficients.
Enhanced noise is the variance of the noise at the FFE output and is given by:nout=Σk=1F−1f[k]W[n−k]  [Eq. 8]E(|nout|2)=E(Σk=1F−1Σl=1F−1f[l]f[k]W[n−k]W[n−l])=Σk=1F−1Σl=1F−1f[l]f[k]Rww[k−l]=ΣM=0clRww[M]Σk=1F−1f[k]f[k−M]  [Eq. 9]where E(|nout|2)]—is the target function (the total power of the noise at the FFE output).
The Mean Square Error (MSE) at the FFE output is defined as the sum of the residual ISI and the variance of the enhanced noise, and is given by:MSE=ResISI+E(|nout|2)  [Eq. 10]
The optimal FFE coefficients in the Minimum Mean Square Error (MMSE—an estimation method which minimizes the MSE) Decision Feedback Equalizer (DFE—an adaptive equalizer in which once the value of the current transmitted symbol is determined it is possible to exactly remove the ISI contribution of that symbol to future received symbols). Once the current symbol has been decided, the filter structure can calculate the ISI effect it would tend to have on subsequent received symbols and compensate the input to the decision device for the next samples. This postcursor ISI removal is accomplished by the use of a feedback filter structure) criteria, minimize the MSE.
It is an object of the present invention to provide a system and method for calculating Feed Forward Equalization (FFE) coefficients, using an iterative process.
It is another object of the present invention to provide a system and method for calculating Feed Forward Equalization (FFE) coefficients, which does not require a large number of samples and rapidly converges.
Other objects and advantages of the invention will become apparent as the description proceeds.